import socket

# 模拟tcp客户端
# 声明一个连接对象
# family:协议族，socket.

# s=socket.socket(family=socket.AF_INET,type=socket.SOCK_STREAM)
# s.connect(('192.168.13.35',7777))
# s.send('元宵节快乐!'.encode())
# print(s.recv(1024).decode())
# s.close()



# 模拟服务端

# s=socket.socket()                       # 1.创建一个连接对象，默认的是ipv4，tcp
# s.bind(('192.168.13.21',9999))                # 2.开启服务，地址信息是一个元组（地址，端口）
# s.listen(6)                             # 3.开启监听功能
# client, addr = s.accept()                # 4.等待客户端连接  返回的是（socket object，address info）
# client.send('元宵节快乐'.encode('gbk'))
# meg = client.recv(1024).decode('gbk')                # 5.获取消息，bufsize表示一次能读到的最大字节数
# print(f'接收到来自{addr}d的连接：{meg}')


# udp server
# s=socket.socket(family=socket.AF_INET,type=socket.SOCK_DGRAM)
# s.bind(('192.168.13.21',9999))
#
# meg = s.recvfrom(1024)
# print(meg[0].decode())
# s.close()

# udp client
s=socket.socket(family=socket.AF_INET,type=socket.SOCK_DGRAM)
s.sendto('hello world'.encode(),('192.168.13.35',5555))

meg = s.recvfrom(1024)
print(meg[0].decode())
s.close()

